HAL IRDA macro migration

This section provides information about the HAL IRDA macro migration.

Note

The following IRDA macros have been transitioned to inline functions, enhancing efficiency and type safety.

Related concept: Removal of hardware-related macros in HAL2

HAL IRDA enable/disable

HAL1

HAL2

#define __HAL_IRDA_ENABLE(__HANDLE__)
#define __HAL_IRDA_DISABLE(__HANDLE__)
__STATIC_INLINE void LL_USART_Enable(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_Disable(USART_TypeDef *p_usart)

HAL IRDA get flag/interrupt

HAL1

HAL2

#define __HAL_IRDA_GET_IT(__HANDLE__, __INTERRUPT__)
/*OR*/
#define __HAL_IRDA_GET_FLAG(__HANDLE__, __FLAG__)
__STATIC_INLINE uint32_t LL_USART_IsActiveFlag(const USART_TypeDef *p_usart, uint32_t mask)

General HAL IRDA clear flags

HAL1

HAL2

#define __HAL_IRDA_CLEAR_FLAG(__HANDLE__, __FLAG__)
/* OR */
#define __HAL_IRDA_CLEAR_IT(__HANDLE__, __IT_CLEAR__)
__STATIC_INLINE void LL_USART_ClearFlag(USART_TypeDef *p_usart, uint32_t mask)

Specific HAL IRDA clear flags

HAL1

HAL2

#define __HAL_IRDA_CLEAR_PEFLAG(__HANDLE__)
#define __HAL_IRDA_CLEAR_FEFLAG(__HANDLE__)
#define __HAL_IRDA_CLEAR_NEFLAG(__HANDLE__)
#define __HAL_IRDA_CLEAR_OREFLAG(__HANDLE__)
#define __HAL_IRDA_CLEAR_IDLEFLAG(__HANDLE__)
__STATIC_INLINE void LL_USART_ClearFlag_PE(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_ClearFlag_FE(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_ClearFlag_NE(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_ClearFlag_ORE(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_ClearFlag_IDLE(USART_TypeDef *p_usart)

HAL IRDA Get interrupt source

HAL1

HAL2

#define __HAL_IRDA_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_IDLE(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_RXNE_RXFNE(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_TC(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_TXE_TXFNF(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_PE(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_RTO(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_EOB(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_TXFE(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_RXFF(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_LBD(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_ERROR(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_CTS(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_TXFT(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_TCBGT(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_RXFT(const USART_TypeDef *p_usart)

HAL IRDA Enable Interrupt

HAL1

HAL2

#define __HAL_IRDA_ENABLE_IT(__HANDLE__, __INTERRUPT__)
__STATIC_INLINE void LL_USART_EnableIT_CR1(USART_TypeDef *p_usart, uint32_t mask)
__STATIC_INLINE void LL_USART_EnableIT_CR2(USART_TypeDef *p_usart, uint32_t mask)
__STATIC_INLINE void LL_USART_EnableIT_CR3(USART_TypeDef *p_usart, uint32_t mask)

HAL IRDA disable interrupt

HAL1

HAL2

#define __HAL_IRDA_DISABLE_IT(__HANDLE__, __INTERRUPT__)
__STATIC_INLINE void LL_USART_DisableIT_CR1(USART_TypeDef *p_usart, uint32_t mask)
__STATIC_INLINE void LL_USART_DisableIT_CR2(USART_TypeDef *p_usart, uint32_t mask)
__STATIC_INLINE void LL_USART_DisableIT_CR3(USART_TypeDef *p_usart, uint32_t mask)

HAL IRDA flush data register

HAL1

HAL2

#define __HAL_IRDA_FLUSH_DRREGISTER(__HANDLE__)
__STATIC_INLINE void LL_USART_RequestRxDataFlush(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_RequestTxDataFlush(USART_TypeDef *p_usart)

HAL IRDA reset handle state

HAL1

HAL2

#define __HAL_IRDA_RESET_HANDLE_STATE(__HANDLE__)

Removed ( Use HAL_UART_DeInit() instead when you need to reset all states)


HAL IRDA one bit sampling

HAL1

HAL2

#define __HAL_IRDA_ONE_BIT_SAMPLE_ENABLE(__HANDLE__)
#define __HAL_IRDA_ONE_BIT_SAMPLE_DISABLE(__HANDLE__)
HAL_UART_SetOneBitSample(const hal_uart_handle_t *huart,
hal_uart_one_bit_sample_t one_bit_sample)

HAL IRDA send request

HAL1

HAL2

#define __HAL_IRDA_SEND_REQ(__HANDLE__, __REQ__)
HAL_UART_SendRequest(hal_uart_handle_t *huart,
hal_uart_request_t request)